class Student extends User {

    String imie
    String drugieImie
    String nazwisko
    String nazwiskoRodowe
    String imieOjca
    String imieMatki
    String nazwiskoRodoweMatki
    Date dataUrodzenia
    String miejsceUrodzenia
    String obywatelstwo
    String PESEL
    String NIP

    String miejscowoscZameldowania
    String ulicaZameldowania
    String numerDomuZameldowania
    String numerLokaluZameldowania
    String kodZameldowania

    String miejscowoscKorespondencyjna
    String ulicaKorespondencyjna
    String numerDomuKorespondencyjny
    String numerLokaluKorespondencyjny
    String kodKorespondencyjny

    String telefon
    String telefonKomorkowy
    String email

    Date dataUkonczeniaStudiow
    String nazwaUczelnia
    String ukonczonyKierunek
    String specjalnosc
    String typStudiow
    String stopienNaukowy

    String miejsceZatrudnienia
    String tytulZawodowy

    Boolean dyplom
    Boolean podanie
    Boolean kwestionariusz
    Boolean pierwszaWplata

    Boolean inneDaneDoFaktury
    String miejscowoscDoFaktury
    String ulicaDoFaktury
    String numerDonuDoFaktury
    String numerLokaluDoFaktury
    String kodDoFaktury
    String nipDoFaktury
    String nazwaFirmyDoFaktury
    
    Course kierunekStudiowPodyplomowych

    String toString() {"${this.imie}  ${this.nazwisko}"}

    static belongsTo = [Course, Role]

    static def hasMany = [platnosci: Payment]
    
    static constraints = {

    imie()
    drugieImie()
    nazwisko()
    nazwiskoRodowe()
    imieOjca()
    imieMatki()
    nazwiskoRodoweMatki()
    dataUrodzenia()
    miejsceUrodzenia()
    obywatelstwo()
    PESEL()
    NIP()

    miejscowoscZameldowania()
    ulicaZameldowania()
    numerDomuZameldowania()
    numerLokaluZameldowania()
    kodZameldowania()

    miejscowoscKorespondencyjna()
    ulicaKorespondencyjna()
    numerDomuKorespondencyjny()
    numerLokaluKorespondencyjny()
    kodKorespondencyjny()

    telefon()
    telefonKomorkowy()
    email()

    dataUkonczeniaStudiow()
    nazwaUczelnia()
    ukonczonyKierunek()
    specjalnosc()
    typStudiow()
    stopienNaukowy()

    miejsceZatrudnienia()
    tytulZawodowy()

    kierunekStudiowPodyplomowych()    

    }

}
